From 4edf06d01641b03535e9cafbb945bc2eeb0716a4 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 28 Nov 2005 15:32:44 +0000 Subject: [PATCH] Correctly handle the cell list and indices into it. (#321856) 2005-11-28 Matthias Clasen * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly handle the cell list and indices into it. (#321856) --- ChangeLog | 5 +++++ ChangeLog.pre-2-10 | 5 +++++ gtk/gtkiconview.c | 10 ++++++++-- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index c07a4cf049..1729178ce9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-11-28 Matthias Clasen + + * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly + handle the cell list and indices into it. (#321856) + 2005-11-28 Matthias Clasen * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index c07a4cf049..1729178ce9 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +2005-11-28 Matthias Clasen + + * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly + handle the cell list and indices into it. (#321856) + 2005-11-28 Matthias Clasen * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when diff --git a/gtk/gtkiconview.c b/gtk/gtkiconview.c index 6657c71853..d5b680a7a2 100644 --- a/gtk/gtkiconview.c +++ b/gtk/gtkiconview.c @@ -4714,10 +4714,13 @@ update_text_cell (GtkIconView *icon_view) { if (icon_view->priv->text_cell != -1) { + if (icon_view->priv->pixbuf_cell > icon_view->priv->text_cell) + icon_view->priv->pixbuf_cell--; + info = g_list_nth_data (icon_view->priv->cell_list, icon_view->priv->text_cell); - g_list_remove (icon_view->priv->cell_list, info); + icon_view->priv->cell_list = g_list_remove (icon_view->priv->cell_list, info); free_cell_info (info); @@ -4784,10 +4787,13 @@ update_pixbuf_cell (GtkIconView *icon_view) { if (icon_view->priv->pixbuf_cell != -1) { + if (icon_view->priv->text_cell > icon_view->priv->pixbuf_cell) + icon_view->priv->text_cell--; + info = g_list_nth_data (icon_view->priv->cell_list, icon_view->priv->pixbuf_cell); - g_list_remove (icon_view->priv->cell_list, info); + icon_view->priv->cell_list = g_list_remove (icon_view->priv->cell_list, info); free_cell_info (info); -- 2.30.2